home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d6 / mailmen.arc / PRINTCAT.PRG < prev    next >
Text File  |  1991-01-10  |  6KB  |  236 lines

  1. SET TALK OFF
  2. ERASE
  3. STORE T TO BEVEL
  4. DO WHILE BEVEL
  5. STORE ' ' TO ANS1
  6. @ 10,5 say "Do you wish to print a list of friends or business (F or B) ?"
  7. @ 10,75 GET ANS1
  8. READ
  9. CLEAR GETS
  10.      IF !(ANS1) = 'F' .OR. !(ANS1) = 'B'
  11.      STORE F TO BEVEL
  12. ELSE
  13. ENDIF
  14. ENDDO
  15.   IF !(ANS1) = 'F'
  16.      USE MAIL
  17.      STORE T TO BLUE
  18.      DO WHILE BLUE
  19.      STORE ' ' TO INDEX1
  20.      ERASE
  21.      @ 10,5 SAY "Do You Want to Reindex the File (Y OR N) ?"
  22.      @ 10,75 GET INDEX1
  23.      READ
  24.      CLEAR GETS
  25.      IF !(INDEX1)= 'Y'
  26.      INDEX ON LAST TO LAST
  27.      STORE F TO BLUE
  28.      ELSE
  29.      IF !(INDEX1) = 'N'
  30.      STORE F TO BLUE
  31.      ELSE
  32.      ENDIF
  33.      ENDIF
  34.      ENDDO
  35.      STORE 60 TO N
  36.      ERASE
  37.      STORE 0 TO INDEX2
  38.      USE MAIL INDEX LAST
  39.      GO TOP
  40.      SET PRINT ON
  41.      ? CHR(15)
  42.      STORE T TO TRUE
  43.      DO WHILE TRUE
  44. ? 'NAME','                                    ','|', 'COMPANY', '            ';
  45.    ,'         ','|', 'OFFICE TEL. ','|', 'HOME TEL.'
  46. ? '====','                                    ','|', '=======', '            ';
  47.    ,'         ','|', '=========== ','|', '========='
  48.  
  49.           DO WHILE .NOT. EOF .AND. INDEX2 < N
  50.                IF FRIEND <> ' '
  51.      ? LAST, FIRST,'|', COMPANY,'|', TEL:WRK,'|', TEL:HM
  52.                STORE INDEX2 +1 TO INDEX2
  53.                ENDIF
  54.                SKIP
  55.           ENDDO
  56.                     IF INDEX2 >= N
  57.                          EJECT
  58.                          STORE 0 TO INDEX2
  59.                     ENDIF
  60.                     IF EOF = .T.
  61.                          STORE F TO TRUE
  62.                     ENDIF
  63.      ENDDO
  64.      EJECT
  65.      ? CHR(18)
  66.      SET PRINT OFF
  67.      RETURN
  68. ENDIF
  69. IF !(ANS1) = 'B'
  70. STORE T TO RIGHT
  71. DO WHILE RIGHT
  72. STORE ' ' TO P
  73. ERASE
  74. @ 10,5 SAY "Press 'A' To Print All Categories"
  75. @ 12,5 SAy "Press 'S' to print selected categories"
  76. @ 12,70 get P
  77. READ
  78. CLEAR GETS
  79. IF !(P) = 'A' .OR. !(P) = 'S'
  80.      STORE F TO RIGHT
  81. ELSE
  82. ENDIF
  83. ENDDO
  84. IF !(P) = 'A'
  85. STORE 60 TO N
  86.      ERASE
  87.      USE MAIL
  88.      STORE T TO BLUE
  89.      DO WHILE BLUE
  90.      STORE ' ' TO INDEX1
  91.      ERASE
  92.      @ 10,5 SAY "Do You Want to Reindex the File (Y OR N) ?"
  93.      @ 10,75 GET INDEX1
  94.      READ
  95.      CLEAR GETS
  96.      IF !(INDEX1) = 'Y'                       
  97.      INDEX ON COMPANY TO COMP
  98.      STORE F TO BLUE
  99.      ELSE
  100.      IF !(INDEX1) = 'N'
  101.      STORE F TO BLUE
  102.      ELSE
  103.      ENDIF
  104.      ENDIF
  105.      ENDDO
  106.      STORE 0 TO INDEX2
  107.      USE MAIL INDEX COMP
  108.      GO TOP
  109.      SET PRINT ON
  110.      ? CHR(15)
  111.      STORE T TO TRUE
  112.      DO WHILE TRUE
  113. ? 'COMPANY','                      ','|', 'NAME', '                          ';
  114.   ,'         ','|','OFFICE TEL. ','|', 'HOME TEL.'
  115. ? '=======','                      ','|', '====', '                          ';
  116.   ,'         ','|','=========== ','|', '========='
  117.           DO WHILE .NOT. EOF .AND. INDEX2 < N
  118.           IF FRIEND = ' '
  119. ? COMPANY,'|', FIRST, LAST,'|', TEL:WRK,'|', TEL:HM
  120.                STORE INDEX2 +1 TO INDEX2
  121.           ENDIF
  122.           SKIP
  123.           ENDDO
  124.                     IF INDEX2 >= N
  125.                          EJECT
  126.                          STORE 0 TO INDEX2
  127.                     ENDIF
  128.                     IF EOF
  129.                          STORE F TO TRUE
  130.                     ENDIF
  131.      ENDDO
  132.      EJECT
  133.      ? CHR(18)
  134.      SET PRINT OFF
  135.      RETURN
  136. ENDIF
  137. IF !(P) = 'S'
  138. STORE T TO CONTINUE
  139. DO WHILE CONTINUE
  140. SET PRINT OFF
  141. STORE T TO LEVEL
  142. DO WHILE LEVEL
  143. STORE ' ' TO ANS
  144. STORE ' ' TO CAT
  145. ERASE
  146. ?
  147. ?
  148. ?
  149. ?
  150. ACCEPT "What Priority Level Are You Searching (1,2, OR 3) ?" TO ANS
  151. ?
  152. ?
  153. ACCEPT "What Category Are You Looking For ?" TO CAT
  154. IF ANS = '1' .OR. ANS = '2' .OR. ANS = '3'
  155. STORE 'PROF'-ANS TO PROF
  156. STORE F TO LEVEL
  157. ELSE
  158. ENDIF
  159. ENDDO
  160. ERASE
  161. STORE !(CAT) TO CAT
  162. USE MAIL
  163. STORE T TO TRUE
  164. DO WHILE TRUE
  165. STORE ' ' TO INDEX
  166. @ 10,5 SAY "Do You Want to Reindex the File (Y OR N) ?" GET INDEX
  167. READ
  168. IF !(INDEX)= 'Y'
  169. INDEX ON &PROF TO &PROF
  170. STORE F TO TRUE
  171. ELSE
  172. IF !(INDEX) = 'N'
  173. STORE F TO TRUE
  174. ELSE
  175. ENDIF
  176. ENDIF
  177. ENDDO
  178. USE MAIL INDEX &PROF
  179. FIND &CAT
  180. STORE 60 TO N
  181. ERASE
  182. STORE 0 TO INDEX
  183. SET PRINT ON
  184. ? CHR(15)
  185. STORE T TO TRUE
  186. DO WHILE TRUE
  187. ? "&CAT"
  188. ? "------------------------------"
  189. ? 'COMPANY','                      ','|', 'NAME', '                          ';
  190.   ,'         ','|','OFFICE TEL. ','|', 'HOME TEL.'
  191. ? '=======','                      ','|', '====', '                          ';
  192.   ,'         ','|','=========== ','|', '========='
  193.      DO WHILE .NOT. EOF .AND. &PROF = '&CAT' .AND. INDEX < N
  194. ? COMPANY,'|', FIRST, LAST,'|', TEL:WRK,'|', TEL:HM
  195.           STORE INDEX +1 TO INDEX
  196.           SKIP
  197.      ENDDO
  198.                IF INDEX >= N
  199.                     EJECT
  200.                     STORE 0 TO INDEX
  201.                ENDIF
  202.                IF EOF = .T.
  203.                     STORE F TO TRUE
  204.                ENDIF
  205.                IF &PROF <> '&CAT'
  206.                     STORE F TO TRUE
  207.                ENDIF
  208. ENDDO
  209. ERASE
  210. STORE ' ' TO CONT
  211. @ 10,5 SAY 'Do you wish to continue ?'
  212. @ 12,5 SAY "Press 'N' to Return to the Menu"
  213. @ 14,5 SAY 'Press any other key to continue'
  214. @ 14,40 GET CONT
  215. READ
  216. CLEAR GETS
  217. IF !(CONT) = 'N'
  218. EJECT
  219. ? CHR(18)
  220. SET PRINT OFF
  221. STORE F TO CONTINUE
  222. RETURN
  223. ELSE
  224. ENDDO
  225. ENDIF
  226. ENDIFIF FRIEND <> ' '
  227.      ? LAST, FIRST,'|', COMPANY,'|', TEL:WRK,'|', TEL:HM
  228.                STORE INDEX2 +1 TO INDEX2
  229.                ENDIF
  230.                SKIP
  231.           ENDDO
  232.                     IF INDEX2 >= N
  233.                          EJECT
  234.                          STORE 0 TO INDEX2
  235.                     ENDIF
  236.                     IF EOF = .T.